package org.report.excel.dto;

import lombok.Data;

import java.io.File;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Set;

/**
 * @author Administrator
 * @describe 说明
 * @date 2024/5/20 0020 9:05
 */
@Data
public class ExcelWriteDto<T> {
    /**
     * 要读取的excel文件，与inputStream、excelFilePath三选一，优先outputStream
     */
    private File excelFile;
    /**
     * 要读取的excel文件，与inputStream、excelFile三选一，优先outputStream
     */
    private String excelFilePath;
    /**
     * 要输出的excel文件流，与excelFile、excelFilePath三选一，优先outputStream
     */
    private OutputStream outputStream;
    /**
     * 写入excel内容的数据类型
     */
    private Class<T> tClass;
    /**
     * 指定的sheetNo
     */
    private Integer sheetNo;
    /**
     * 指定要写入的sheet名称
     */
    private String sheetName;
    /**
     * 忽略指定的字段，其它字段全部写入
     */
    private Set<String> excludeColumnNames;

    /**
     * 只写入指定的字段，其它字段全部忽略
     */
    private Set<String> includeColumnNames;
}
